package com.twentytwok.hospitalsystem22K.service;

import com.twentytwok.hospitalsystem22K.common.PageVo;
import com.twentytwok.hospitalsystem22K.common.R;
import com.twentytwok.hospitalsystem22K.pojo.News;
import com.twentytwok.hospitalsystem22K.vo.NewsQueryVo;

import java.util.List;

public interface NewsService {

    /**
     * 显示所有的新闻信息
     *
     * @return 查询成功返回一个装有所有新闻类实体对象的集合
     */
    List<News> findNews();

    /**
     * 添加新闻信息操作
     *
     * @param news 一个新闻实体类对象
     * @return 添加之后返回受到影响的行数，失败为0，
     */
    R addNews(News news);


    /**
     * 删除新闻信息操作
     *
     * @param id 删除指定id的新闻
     * @return 删除之后返回受到影响的行数，失败为0，
     */
    R deleteNews(Integer id);

    /**
     * 修改新闻信息操作
     *
     * @param news 修改过的news实体类对象
     * @return 修改之后返回受到影响的行数，失败为0，
     */
    R modifyNews(News news);

    /**
     *  分页查询新闻信息
     *
     * @param params 查询的参数
     * @return  查询之后返回受到影响的行数，失败为0，
     */
    R getDataNews(NewsQueryVo params);

    R getNewsById(Integer id);

    R listNewsByTime(NewsQueryVo newsQueryVo);

    R getNewsAsPie();
}
